package net.csdra.article.service;

import net.csdra.article.domain.Template;
import net.csdra.article.service.form.CreateTemplate;
import net.csdra.article.service.form.UpdateTemplate;
import net.csdra.basis.service.ServiceBaseInterface;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * Created by msf on 2018/2/2.
 */
public interface TemplateManageService extends ServiceBaseInterface<Template, CreateTemplate, UpdateTemplate> {
    /**
     * 根据templateId获取该模板的所有历史版本
     *
     * @param templateId
     * @return
     */
    List<Template> getAllHistory(String templateId);

    /**
     * 返回所有 isPublic=true and enabled=true;
     *
     * @return
     */
    Page<Template> getPageByIsPublic();

    Template getLatestTemplate(String templateId);

}
